from collections import deque
t = int(input())
for _ in range(t):
n = int(input())
a = [int(i) for i in input().split()]
if len(set(a)) == 1 and a[0] == 0:
print("0\n")
continue
a = deque(a)
while a and a[-1] == 0:
a.pop()
while a and a[0] == 0:
a.popleft()
if 0 in a:
print("2\n")
else:
print("1\n")
#include <bits/stdc++.h>
using namespace std;
int main(){
int t;
cin>>t;
while(t--){
long long int n;
cin>>n;
long long int flag = 0;
long long int count = 0;
for(int i=0; i<n; i++){
long long int p;
cin>>p;
if(flag == 0){
if(p == 0){
continue;
}else{
flag = 1;
}
}else{
if(p == 0){
count++;
flag = 0;
}else{
continue;
}
}
}
if(flag == 1){
count++;
}
if(count == 0){
cout<<count<<endl;
}else if(count == 1){
cout<<count<<endl;
}else{
cout<<2<<endl;
}
}
}
1213A - Chips Moving | 490A - Team Olympiad |
233A - Perfect Permutation | 1360A - Minimal Square |
467A - George and Accommodation | 893C - Rumor |
227B - Effective Approach | 1534B - Histogram Ugliness |
1611B - Team Composition Programmers and Mathematicians | 110A - Nearly Lucky Number |
1220B - Multiplication Table | 1644A - Doors and Keys |
1644B - Anti-Fibonacci Permutation | 1610A - Anti Light's Cell Guessing |
349B - Color the Fence | 144A - Arrival of the General |
1106A - Lunar New Year and Cross Counting | 58A - Chat room |
230A - Dragons | 200B - Drinks |
13A - Numbers | 129A - Cookies |
1367B - Even Array | 136A - Presents |
1450A - Avoid Trygub | 327A - Flipping Game |
411A - Password Check | 1520C - Not Adjacent Matrix |
1538B - Friends and Candies | 580A - Kefa and First Steps |